In order to start the design of a circuit, a specification needs to be received, which states the functionality that the finished design needs to provide. However, the specification does not indicate how this functionality is to be achieved. The specification is essentially a technical description of what the finished circuit has to achieve, and can include a variety of electrical requirements, such as the input and output signals of the circuit, the available power supplies, permitted power consumption, or the like. The specification can also set some physical parameters that the design must meet, such as size, weight, moisture resistance, temperature range, thermal output, vibration tolerance, acceleration tolerance, or the like.
The design process includes transforming the specification into a plan that contains all the information required for physically constructing the circuit. The process normally includes several stages.
First, the specification is converted into a block diagram of the various functions that the circuit must perform, at which stage the contents of each block are not considered, but only what the block does. This approach allows for breaking a possibly complicated task into smaller tasks which may be handled one after the other, or divided amongst members of a design team.
Each block may then be studied in more detail, and in particular the details of the electrical functions of the block are considered.
Then, the specific circuit components are chosen to carry out each function of the overall design. At this stage the physical layout and electrical connections of each component are also determined. This stage is usually done using a graphic user interface, in which the layout of the circuit is designed. Each element may have a name property, and during design, each element of the design may be assigned value for the name property, wherein the name property value comprises a character string. The value of the name property may be used for identifying the element, searching, or the like. The value of the name property may be assigned by the designer according to his or her choice. A default value may be assigned automatically to each unnamed element by the design software.
The resulting layout may be used for the production of a printed circuit board or Integrated circuit.